export interface ResponseData {
  status: number
}

export interface Group {
  _id: string
  groupName: string
  groupNumber: number
  sign: string
  imgUrl: string
  creatTime: string
  userId: string
  groupUsers: {
    _id: string
    nick: string
    imgUrl: string
    sign: string
  }[]
}

export interface GetGroupsResponseData extends ResponseData {
  data: {
    groups: Group[]
    total: number
  }
}

export interface DeleteGroupMemberResponseData extends ResponseData {
  message: string
}

export type GroupFormType = Partial<Group>

export interface UploadResponseData extends ResponseData {
  message: '上传成功'
  data: {
    url: string
  }
}

export interface UpdateGroup {
  _id: string
  groupName: string
  imgUrl: string
  sign: string
}

export interface UpdateGroupResponseData extends ResponseData {
  message: string
}